---
layout: post
permalink: release-4-1/
title: 'Rainmeter 4.1 Release'
---
<div class="release-notes">
<div class="description">
	<h1 class="text-center">Rainmeter 4.1 Release</h1>
	<hr>
	<p>There are a lot of new features and capabilities in the latest Rainmeter 4.1. You can safely install the new 4.1 <br>release version right over your existing Rainmeter 4.0 or any earlier installation, and nothing you have done will be lost or changed. There is never any need to uninstall any earlier version of Rainmeter to use the newest version.</p>
	<p><b>Note:</b> Rainmeter 4.1 will run on Microsoft Windows 7 through 10. Windows XP and Vista are not supported.</p>
</div>

<div class="changelog">

	<h2>Major additions and changes in Rainmeter 4.1</h2>

	<hr>
	<div class="feature">
		<h4>Variables</h4>
		<p class="text-muted">Added an alternative nesting variables syntax, to enable nesting variables, section variables, and mouse variables inside each other. See <a href="https://docs.rainmeter.net/manual-beta/variables/nesting-variables/">Nesting Variables</a> for details.</p>
		<p class="text-muted">Added Character Reference Variables to allow plain-text coding of Unicode characters and symbols, as well as icons from specialized fonts like FontAwesome. See <a href="https://docs.rainmeter.net/manual-beta/variables/character-variables/">Character Reference Variables</a> for details.</p>
	</div>

	<div class="feature">
		<h4>FontWeight</h4>
		<p class="text-muted">Added new <a href="https://docs.rainmeter.net/manual-beta/meters/string/#FontWeight">FontWeight</a> option to the String meter. This much more powerful option should be used in place of StringStyle going forward.</p>
	</div>

	<div class="feature">
		<h4>Bangs</h4>
		<p class="text-muted">New <a href="https://docs.rainmeter.net/manual-beta/bangs/#EditSkin">!EditSkin</a> bang. Opens the current or a specified skin .ini file in the text editor defined in <a href="https://docs.rainmeter.net/manual-beta/settings/rainmeter-section/#ConfigEditor">ConfigEditor</a> in the Rainmeter settings, or associated with .ini files in Windows. The default will be Windows Notepad.exe.</p>
		<p class="text-muted">Added new <a href="https://docs.rainmeter.net/manual-beta/bangs/#FadeDuration">!FadeDuration</a> and <a href="https://docs.rainmeter.net/manual-beta/bangs/#FadeDurationGroup">!FadeDurationGroup</a> bangs to set the <a href="https://docs.rainmeter.net/manual-beta/settings/skin-sections/#FadeDuration">FadeDuration</a> in milliseconds when activating/deactivating a skin, using the fade-in / fade-out effects on mouse over, or when the <a href="https://docs.rainmeter.net/manual-beta/bangs/#ShowHideToggleFade">fade bangs</a> are used.</p>
	</div>

	<div class="feature">
		<h4>Drag Groups</h4>
		<p class="text-muted">Drag Groups can now be created by selecting skins while holding CTRL-ALT. Dragging one skin, or nudging with the arrow keys will move all selected skins. See <a href="https://docs.rainmeter.net/manual-beta/arranging-skins/#Multiple">Multiple Skins</a> for details.</p>
	</div>

	<div class="feature">
		<h4>Lua Scripting</h4>
		<p class="text-muted">Added inline Lua section variables, to support an inline return of a value from Lua with a function() call or by retrieving a variable. See <a href="https://docs.rainmeter.net/manual-beta/lua-scripting/inline-lua/">Inline Lua</a> for details.</p>
		<p class="text-muted">Due to recent changes made in how each Lua script maintains its own distinct state in the Rainmeter environment, we have been able to add the <em>dofile</em>, <em>debug</em>, <em>setfenv</em>, <em>getfenv</em> and <em>coroutine</em> functionality back into the Lua package.</p>
	</div>

	<div class="feature">
		<h4>About Dialog</h4>
		<p class="text-muted">There have been several improvements to the <a href="https://docs.rainmeter.net/manual-beta/user-interface/about/">About</a> dialog. This should be of further assistance when debugging your skins.<p>
		<ul style="list-style-type: disc;">
			<li style="margin-left: 2rem;">The Skins panel now shows both the "number" and "string" value of measures, and indicates when a measure is either disabled, paused, or both. See <a href="https://docs.rainmeter.net/manual-beta/user-interface/about/#SkinsTab">Skins Tab</a> for details.</li>
			<li style="margin-left: 2rem;">Added a right-click context menu to the Skins tab to copy the "number", "string" and "range" values to the clipboard.</li>
			<li style="margin-left: 2rem;">Added a right-click context menu to copy the value of Variables in the Skins tab to the clipboard.</li>
			<li style="margin-left: 2rem;">Added a right-click context menu to the Log panel to copy the error and source (if available) to the clipboard.</li>
			<li style="margin-left: 2rem;">The Plugins tab will now group the plugins as "External" or "Built-in".</li>
			<li style="margin-left: 2rem;">Added several plugins that have been converted to measures to the Plugins tab to reduce confusion with missing .dll files.</li>
			<li style="margin-left: 2rem;">Adjusted the column width on the Plugins tab to automatically fit the longest plugin name, and widened the overall size of the About dialog a bit.</li>
		</ul>
	</div>

	<div class="feature">
		<h4>Plugin API and SDK</h4>
		<p class="text-muted">Plugin authors are strongly encouraged to get the latest <a href="https://github.com/rainmeter/rainmeter-plugin-sdk">Plugin SDK</a> and review the new <a href="https://docs.rainmeter.net/developers/">Developer Documentation</a>.</p>
		<p class="text-muted">Added the ability in the Plugin API to create plugins in C++ or C# supporting Inline Plugin Section Variables in a skin. This is primarily a change for plugin authors, with any documentation for how their plugins should be used in a skin provided by the author. Details on how this can be used in a plugin are at <a href="https://docs.rainmeter.net/developers/plugin/cpp/#Custom">C++</a> and <a href="https://docs.rainmeter.net/developers/plugin/csharp/#Custom">C#</a>.</p>
		<p class="text-muted">The documentation for plugin authors has been greatly enhanced and improved, and new and improved example plugins added to the SDK.</p>
	</div>

	<h2>Other enhancements and fixes in Rainmeter 4.1</h2>
	<hr>
	<div class="features-other">
	<p class="text-muted"><b>CoreTemp Plugin:</b> The author of both the <a href="http://www.alcpu.com/CoreTemp/">CoreTemp application</a> and Rainmeter plugin, Arthur Liberman, added CPU core-specific values to the data available in the plugin. See <a href="https://docs.rainmeter.net/manual-beta/plugins/coretemp/">CoreTemp plugin</a> for details.</p>

	<p class="text-muted"><b>Manage dialog:</b> When a skin is selected in the Skins list, the Enter key will toggle loading and unloading the skin.</p>

	<p class="text-muted"><b>Illustro default skins:</b> Changed the URL used to get the user's WAN IP address in the Network skin in Illustro. Note that Illustro will not be installed or updated on existing Rainmeter installations, only on new installations, and this change should be manually made if Illustro is currently being used.</p>

	<p class="text-muted"><b>PCRE Regular Expressions:</b> Added UCP support to the regular expression library, to enable \X \P \p in expressions.</p>

	<p class="text-muted"><b>Net measures:</b> Added a new <a href="https://docs.rainmeter.net/manual-beta/measures/net/#UseBits">UseBits</a> option to return the value of NetIn / NetOut / NetTotal measures in bits rather than the default bytes.</p>

	<p class="text-muted"><b>Formulas:</b> Added new <a href="https://docs.rainmeter.net/manual-beta/formulas/#Functions">Deg</a> math function to convert radians to degrees.</p>

	<p class="text-muted"><b>Shape meter:</b> Added Path1 alternative of the Path shape. It will use a different form of the <a href="https://www.w3.org/TR/SVG/painting.html#FillProperties">SVG fill-rule</a> when the shape is filled with a color or gradient. This determines what parts of a shape with intersecting segments are "inside" the shape and what are "outside", for purposes of filling the shape with the defined color or gradient. See <a href="https://docs.rainmeter.net/manual-beta/meters/shape/#Path1">Path1 shape</a> for details.</p>

	<p class="text-muted"><b>Bitmap meter:</b> Changed the allowable measure value when <a href="https://docs.rainmeter.net/manual-beta/meters/bitmap/#BitmapExtend">BitmapExtend=1</a> from a C-language int data type (2,147,483,647 maximum) to int64 (9,223,372,036,854,775,807 maximum).</p>

	<p class="text-muted"><b>Variables:</b> New <a href="https://docs.rainmeter.net/manual-beta/variables/built-in-variables/#CONFIGEDITOR">#CONFIGEDITOR#</a> built-in variable. The path and executable for the text editor defined in <a href="https://docs.rainmeter.net/manual-beta/settings/rainmeter-section/#ConfigEditor">ConfigEditor</a> in Rainmeter settings, or the text editor associated with .ini files in Windows. The default will be Windows Notepad.exe.</p>
</div>
	<div class="links">
		<h2>Version history and details</h2>
		<hr>
		<ul style="list-style-type: disc;">
			<li style="margin-left: 1rem;">Detailed explanations of major changes at <a href="https://forum.rainmeter.net/viewforum.php?f=116">Change Announcements</a>.</li>
			<li style="margin-left: 1rem;">Additional details on bug fixes and other minor changes at <a href="https://docs.rainmeter.net/history">Version History</a>.</li>
			<li style="margin-left: 1rem;">Full history of all changes to the Rainmeter code at <a href="https://github.com/rainmeter/rainmeter/commits/master">Rainmeter GitHub</a>.</li>
		</ul>
	</div>
</div>
</div>
